Conventional home satellite television systems utilize a fixed dish antenna to receive satellite communications. After receiving the satellite signal, the dish antenna circuitry sends a satellite spectrum signal to a satellite receiver or set-top box that is often located near a television through which the viewer desires to watch the satellite programming. This satellite receiver uses receive path circuitry to tune the program channel that was selected by the user. Throughout the world, the satellite channel spectrum sent to the set-top box is often structured to include 32 transponder channels between 950 MHz and 2150 MHz with each transponder channel carrying a number of different program channels. Each transponder will typically transmit multiple program channels that are time-multiplexed on one carrier signal. Alternatively, the multiple program channels may be frequency multiplexed within the output of each transponder. The total number of received program channels considering all the transponder channels together is typically well over 300 program channels. In a somewhat similar fashion, digital cable and digital terrestrial television broadcasts utilize carrier signals that carry information for digital transport streams that often include multiplexed program channels. In addition to having the ability to tune to these carrier signals, certain existing digital television receivers have multiple tuners that allow for multi-tuner functionality, such as personal video recorder (PVR) functions, picture-in-picture (PiP) functions, and different channel viewing on two televisions.
With respect to the digital transport streams, compression techniques are often utilized. One example of a common compression technique for digital video transmissions is the MPEG2 video compression standard. For digital video broadcasts using MPEG2 compression, data for a plurality of channels are time-multiplexed onto a single transport stream. For satellite digital video broadcasts, each of the MPEG2 transport streams often correlates to a transponder channel, as discussed above. And the satellite broadcaster will select and modify in real-time the channels included within each transport stream based upon the amount of data each channel is requiring to be sent. For example, transmissions correlating to a news broadcast often require relatively low amounts of data because the scenes typically do not change significantly. In contrast, transmissions correlating to sporting events often require relatively large amounts of data because the video scenes are constantly changing at a fast rate. And within a single program, the data flow requirements may vary significantly depending upon the image scenes being broadcast. Thus, the satellite broadcaster, as well as broadcasters of other types of digital video transmissions (e.g., digital cable, digital terrestrial), will typically analyze the current data flow requirements of its programs and attempt to optimize its transport streams by adjusting which channels are multiplexed with which other channels.
Although the wide variety of program channels is a desirable feature of digital television, users often experience delays of several seconds when switching from one program channel to the next. This delay is due to the nature of the digital video transmissions, such as those that use MPEG2 compression techniques. For the MPEG2 standard and other compression standards, a series of data frames are sent. The first frame essentially represents the full frame of the video image that will be displayed and is commonly referred to as an I-frame. This I-frame serves to initialize the video image and is typically transmitted at the beginning of each video scene. After the I-frame is transmitted, a number of additional frames will be transmitted that represent only the difference between the I-frame and the next frame and then between the previous frame and the next frame. These difference frames are commonly referred to as B-frames. Because B-frames contain only difference information, if a channel is accessed while B-frames are being received, a complete image cannot be displayed until a new I-frame is received.
The delay in time between a user accessing a channel and the receipt of the next I-frame creates the potential delay of several seconds. The length of this delay will often depend upon the digital video encoder settings that are being utilized by the broadcaster. For example, if a user is changing channels and happens to change to a channel where the I-frame was recently sent and the video contains a relatively static scene with few changes, the user will likely have to wait for the next I-frame to appear before a full picture can be viewed. As indicated above, this time delay between I-frames can be uncomfortably long, on the order of seconds. Thus, due to the use of compression algorithms, such as MPEG2, digital television typically suffers from slow channel-changing resolution times.
A number of solutions have been proposed to reduce the delay experienced due to gaps in I-frame information. Proposed techniques for reducing this delay have focused on predicting one or more channels that a user is likely to move to next and then tuning, demodulating and decoding these predicted channels. In this way, a plurality of channels has already been decoded and is available through this predictive selection process. If a user moves next to one of these predicted channels, the channel changing time delay can be significantly reduced. Examples of such systems are described in U.S. Pat. Nos. 5,933,192, 6,118,498 and 6,519,011, each of which is hereby incorporated by reference in its entirety. Another technique has been proposed to use extra processing power in the decoder to decode channels in addition to the currently selected channel that have been multiplexed within the same digital transport stream. One problem with this solution, however, is that the channels bundled in the same transport stream may not represent channels that are likely to be selected next by the user, and, therefore, the processing power used to decode these channels would be wasted. An example of such a system is described in U.S. Pat. No. 6,591,013, which is hereby incorporated by reference in its entirety.